﻿#region Using

using System;
using Vk.Methods.Places;

#endregion

namespace Vk.Methods.Common
{
    /// <summary>
    ///     Информация о местоположении
    /// </summary>
    public class GeoInfo
    {
        /// <summary>
        ///     Координаты
        /// </summary>
        public GeoCoords Coordinates;

        /// <summary>
        ///     Место
        /// </summary>
        public Place Place;

        /// <summary>
        ///     Тип места
        /// </summary>
        public string Type;

        /// <summary>
        ///     true, если местоположение является прикреплённой картой
        /// </summary>
        public bool? Showmap { get; set; }

        public GeoInfo(ApiNode node)
        {
            if (node == null)
                return;

            Type = node.String("type");
            var coordinates = node.String("coordinates").Split(new[] {" "}, StringSplitOptions.None);
            Coordinates = new GeoCoords
            {
                Latitude = double.Parse(coordinates[0]),
                Longitude = double.Parse(coordinates[1])
            };
            Place = node.Object("place", x => new Place(x));
            Showmap = node.Bool("showmap");
        }
    }
}